Skip to content

Improve setup for GitHub Copilot coding agent#170

Merged
jaybosamiya-ms merged 2 commits intomainfrom
jayb/github-actions-copilot-setup
Jun 21, 2025
Merged

Improve setup for GitHub Copilot coding agent#170
jaybosamiya-ms merged 2 commits intomainfrom
jayb/github-actions-copilot-setup

Conversation

@jaybosamiya-ms
Copy link
Member

By default, the coding agent doesn't seem to know that it should set up (say) the TUN device, or install nextest, and it needs to spend time figuring it out, or failing to do so. The .github/workflows/copilot-setup-steps.yml sets these things up in advance.

Additionally, it noticeably seems to forget to format code, so I've added .github/copilot-instructions.md that tells it to do this for each commit. I also gave it some more information, which should hopefully send it down a nicer path that better matches workflow within our repo.

@jaybosamiya-ms jaybosamiya-ms requested a review from Copilot June 21, 2025 01:30
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a dedicated GitHub Actions workflow to prepare the Copilot coding agent’s environment (installing Rust toolchain, nextest, and setting up a TUN device) and introduces a repository-level instructions file to enforce formatting and development steps for Copilot commits.

  • New copilot-setup-steps.yml workflow to pre-install required tools before Copilot runs
  • Added .github/copilot-instructions.md with developer workflow and code quality guidelines

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
.github/workflows/copilot-setup-steps.yml Workflow that installs Rust toolchain (with rustfmt & clippy), nextest, and configures a TUN device
.github/copilot-instructions.md Markdown outlining required pre-commit commands and coding standards for Copilot-driven changes
Comments suppressed due to low confidence (3)

.github/workflows/copilot-setup-steps.yml:36

  • The ~ in ${CARGO_HOME:-~/.cargo} may not expand correctly in all shells. Consider using ${CARGO_HOME:-$HOME/.cargo}/bin to ensure the fallback path resolves reliably.
          curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin

.github/workflows/copilot-setup-steps.yml:36

  • [nitpick] Pin the nextest installer to a specific version (instead of latest) to avoid unexpected changes. For example, download https://get.nexte.st/0.37.0/linux.
          curl -LsSf https://get.nexte.st/latest/linux | tar zxf - -C ${CARGO_HOME:-~/.cargo}/bin

.github/copilot-instructions.md:1

  • [nitpick] The phrase “sandboxing library OS” is a bit unclear. Consider clarifying whether this is a library for sandboxing or an operating system, for example “sandboxing library and OS components.”
This repository contains a Rust-based, security-focused sandboxing library OS. To maintain high code quality and consistency, please adhere to the following guidelines when contributing.

@github-actions
Copy link

🤖 SemverChecks 🤖 No breaking API changes detected

Note: this does not mean API is unchanged, or even that there are no breaking changes; simply, none of the detections triggered.

@jaybosamiya-ms jaybosamiya-ms merged commit 5fdd6af into main Jun 21, 2025
6 checks passed
@jaybosamiya-ms jaybosamiya-ms deleted the jayb/github-actions-copilot-setup branch June 21, 2025 01:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants